System and method for chart pattern recognition and analysis in an electronic trading environment

ABSTRACT

A system and method are provided for chart pattern recognition and analysis. In one embodiment, a graphical interface is provided to enable a trader to select a portion of a chart to be used in the chart pattern analysis. The pattern of the selected portion of the chart could then be used to find one or more similar chart patterns in a user-defined timeframe, such as any future time period or a time period in the past. When a reoccurring chart pattern is found in any future time period, an alert signal can be generated to alert a user of a possibility of the chart pattern reoccurrence. Alternatively, chart pattern matches can be found in a time period in the past, and a set of studies can be applied to the found matches to generate a set of reoccurring indicator values. The reoccurring indicator values can be used in combination with the chart pattern to detect any similar chart patterns in the future.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.12/697,766, filed Feb. 1, 2010, entitled “System and Method for ChartPattern Recognition and Analysis in an Electronic Trading Environment,”now issued as U.S. Pat. No. 7,882,002, which is a continuation of U.S.patent application Ser. No. 11/417,933, filed May 3, 2006, now issued asU.S. Pat. No. 7,685,042, entitled “System and Method for Chart PatternRecognition and Analysis in an Electronic Trading Environment,” which isa continuation of U.S. patent application Ser. No. 10/882,594, nowissued as U.S. Pat. No. 7,599,867, filed Jun. 30, 2004, entitled “Systemand Method for Chart Pattern Recognition and Analysis in an ElectronicTrading Environment” the contents of which are fully incorporated hereinby reference.

FIELD OF INVENTION

The present invention is directed to chart analysis. More specifically,the present invention is directed to chart pattern recognition andanalysis in an electronic trading environment.

BACKGROUND

An exchange is a central marketplace with established rules andregulations where buyers and sellers meet to trade. Some exchanges,referred to as open outcry exchanges, operate using a trading floorwhere buyers and sellers physically meet on the floor to trade. Otherexchanges, referred to as electronic exchanges, operate by an electronicor telecommunications network instead of a trading floor to facilitatetrading in an efficient, versatile, and functional manner. Electronicexchanges have made it possible for an increasing number of people toactively participate in a market at any given time. The increase in thenumber of potential market participants has advantageously led to, amongother things, a more competitive market and greater liquidity.

With respect to electronic exchanges, buyers and sellers may log onto anelectronic exchange trading platform by way of a communication linkthrough their user terminals. Once connected, buyers and sellers maytypically choose which tradeable objects they wish to trade. As usedherein, the term “tradeable object” refers to anything that can betraded with a quantity and/or price. It includes, but is not limited to,all types of traded events, goods and/or financial products, which caninclude, for example, stocks, options, bonds, futures, currency, andwarrants, as well as funds, derivatives and collections of theforegoing, and all types of commodities, such as grains, energy, andmetals. The tradeable object may be “real,” such as products that arelisted by an exchange for trading, or “synthetic,” such as a combinationof real products that is created by the user. A tradeable object couldactually be a combination of other tradeable objects, such as a class oftradeable objects.

Every day, there are thousands of traders buying and selling for manydifferent reasons, such as, for example, fear of loss, hope of gain,hedging, broker recommendations, and many others. To profit inelectronic markets, market participants must be able to assimilate largeamounts of data in order to recognize market trends and to view currentmarket conditions. However, trying to figure out why market participantsare buying or selling can be very difficult. Chart patterns may putbuying and selling activities into perspective by providing a concisepicture of the two activities as a tool to analyze markets.

Identifying chart patterns is a form of what is often referred to astechnical analysis based on an assumption that market trends repeatthemselves. Technical analysis consist primarily of a variety oftechnical studies, which, when interpreted, are used by many traders topredict market trends, and detect buy/sell signals. A trend is adirection in which the market is moving, and a slope of a trend line canbe used in market analysis. Typically, the movement or price developmentdoes not occur as a straight line, but rather consists of a series ofsuccessive peaks and troughs, and it is actually a direction in whichthe peaks and troughs are moving what many consider a market trend. Forexample, an uptrend line is a straight line passing through the risingof an up-move. A reversal of such a trend line is indicated with aviolation of the uptrend line, and is often interpreted as a sellingopportunity. On the other hand, as long as the uptrend line is intact,it is often considered a low-risk buying area. As another example, thetrend lines drawn parallel through the tops and bottoms result in achannel formation, and the market movement to the top of an upwardchannel is often considered a selling opportunity.

Another use of technical analysis, apart from technical studies, is inderiving “support” and “resistance” levels, which can be used by atrader to provide additional information about possible marketmovements. The general consensus is that the market will tend to tradeabove its support levels and below its resistance levels. For example,in a falling market, a support level is a price level where buyersentered the market or where old sellers liquidated their shorts withenough force to keep price from going any lower. In a rising market, aresistance level is a price level where sellers entered the market orwhere old buyers liquidated their long positions with enough force tokeep prices from going any higher. Therefore, in general, it is oftensaid that that in an up-trend the test to support can be used as anindicator of a buying opportunity, and the same is true when a break isdetected in a resistance level. On the other hand, in a downtrendmovement, a resistance zone is considered as an indicator of a sellingopportunity.

Even though there are many existing tools that enable traders to analyzemarket conditions using technical analysis or the like, traders areoften not given enough flexibility as to which portions of the marketdata should be taken in consideration when performing the analysis.Additionally, traders are often interested in reevaluating their tradingdecisions in view of a specific portion of historical market data sothat they can avoid mistakes made in the past, or that they can developnew strategies for the future. Therefore, it would be beneficial toprovide a system along with a graphical interface that can be used bytraders to perform technical analysis according to the trader'spreferences.

BRIEF DESCRIPTION OF THE DRAWINGS

Example embodiments of the present invention are described herein withreference to the following drawings, in which:

FIG. 1 is a block diagram illustrating an example network configurationfor a communication system utilized to access one or more exchanges;

FIG. 2 is a block diagram illustrating an example client device with anumber of layers defining different stages that can be used to implementembodiments of the present invention;

FIG. 3 is a flow diagram illustrating operation and function of apossible implementation of example embodiment for detecting chartpatterns;

FIG. 4 is a flow diagram illustrating operation and function of apossible implementation of example embodiments for analyzing chartpatterns; and

FIG. 5 is a block diagram illustrating an example graphical userinterface that can be used in example embodiments for chart patternrecognition and analysis.

DETAILED DESCRIPTION

I. Chart Pattern Recognition and Analysis Overview

The preferred embodiments are provided, among other things, tofacilitate chart pattern recognition and analysis. In one aspect of thepreferred embodiments, a graphical user interface may display a chartrepresenting market data, such as traded prices or traded volume,related to a tradeable object being traded at one or more exchanges. Theuser may then select a portion of the chart to be used in market patternrecognition and analysis. In an embodiment involving market patternrecognition, once the user selects a portion of a chart, a patternrecognition application may use the characteristics of the selectedchart portion to search for similar chart patterns in the future. Oncethe similar chart pattern is detected, the pattern recognitionapplication may notify a user of the possible reoccurrence of the chartpattern so that the user can take advantage of any potential tradingopportunities. It should be understood that the user could define a timeperiod in the future to be used by the pattern recognition applicationto find similar chart patterns.

In another embodiment, a user may wish to analyze the selected chartpattern. In such an embodiment, the user could define a time period inthe past, and the pattern recognition application can search for similarchart patterns in the portion of the chart corresponding to the userspecified time period. Once the pattern recognition application finds inthe specified time period one or more chart instances having similarchart pattern characteristics to those of the chart portion selected bythe user, the pattern recognition application may display the foundchart instances to a user. The user may then select which of thedisplayed chart instances will be used in the chart analysis by simplyremoving the chart instances that do not fit into the selected chartpattern. The chart analysis can be performed by applying a number ofchart studies to the selected chart instances to determine reoccurringindicator values corresponding to the selected chart instances. Inanother embodiment, when the pattern recognition application finds thechart instances that match the selected chart pattern, the patternrecognition application may select chart portions before and after eachfound chart instance. In such an embodiment, the chart studies that wereapplied to the matched chart pattern instances can be also applied tochart portions before and after each found chart instance so that a usercan view indicator values that lead to the specific chart pattern andanother set of indicator values that followed the chart pattern.Different embodiments are possible as well.

While the present invention is described herein with reference toillustrative embodiments for particular applications, it should beunderstood that the present invention is not limited thereto. Othersystems, methods, and advantages of the present embodiments will be orbecome apparent to one with skill in the art upon examination of thefollowing drawings and description. It is intended that all suchadditional systems, methods, features, and advantages be within thescope of the present invention, and be protected by the accompanyingclaims.

II. Hardware and Software Overview

As will be appreciated by one of ordinary skill in the art, the presentembodiments may be operated in an entirely software embodiment, in anentirely hardware embodiment, or in a combination thereof. However, forsake of illustration, the preferred embodiments are described in asoftware-based embodiment, which is executed on a computer device. Assuch, the preferred embodiments take the form of a computer programproduct that is stored on a computer readable storage medium and isexecuted by a suitable instruction system in the computer device. Anysuitable computer readable medium may be utilized including hard disks,CD-ROMs, optical storage devices, or magnetic storage devices, forexample.

In an electronic trading environment, when a trader selects a tradeableobject, the trader may access market data related to the selectedtradeable object(s). Referring to FIG. 1, an example communication thatmight occur between an electronic exchange and a client terminal inaccordance with the preferred embodiments is shown. During a tradingsession, market data 108, in the form of messages, may be relayed from ahost exchange 106 over communication links 116 and 112 to a clientterminal generally indicated as 102. As illustrated in FIG. 1,intermediate devices, such as gateway(s) 104, may be used to facilitatecommunications between the client terminal 102 and the host exchange106. It should be understood that while FIG. 1 illustrates the clientterminal 102 communicating with a single host exchange, in analternative embodiment, the client terminal 102 could establish tradingsessions to more than one host exchange.

The market data 108 contains information that characterizes thetradeable object's order book including, among other parameters, orderrelated parameters, and the inside market, which represents the lowestsell price (also referred to as the best or lowest ask price) and thehighest buy price (also referred to as the best or highest bid price).In some electronic markets, market data may also include market depth,which generally refers to quantities available for trading the tradeableobject at certain buy price levels and quantities available for tradingthe tradeable object at certain sell price levels.

In addition to providing the tradeable object's order book information,electronic exchanges can offer different types of market informationsuch as total traded quantity for each price level, an opening price,last traded price, last traded quantity, the closing price, or orderfill information. It should be understood that market informationprovided from an electronic exchange could include more or fewer itemsdepending on the type of tradeable object or the type of exchange. Also,it should be understood that the messages provided in the market data108 may vary in size depending on the content carried by them, and thesoftware at the receiving end may be programmed to understand themessages and to act out certain operations.

Typically, a trader may view the information provided from an exchangevia one or more specialized trading screens created by software runningon the client terminal 102. Upon viewing the market information or aportion thereof, a trader may wish to take actions, such as send ordersto an exchange, cancel orders at the exchange, or change orderparameters, for example. To do so, the trader may input various commandsor signals into the client terminal 102. Upon receiving one or morecommands or signals from the trader, the client terminal 102 maygenerate messages that reflect the actions taken, generally shown at110. It should be understood that different types of messages or ordertypes can be submitted to the host exchange 106, all of which may beconsidered various types of transaction information. Once generated,user action messages 110 may be sent from the client terminal 102 to thehost exchange over communication links 114 and 116.

III. System Function and Operation

FIG. 2 is a block diagram illustrating a client device 200 with a numberof layers defining different stages that may be used to implementembodiments of the present invention. The layers include a chartingapplication 202, a chart pattern recognition and analysis application204, an operating system 206, and an application programming interface(“API”) 208. The client device 200 also preferably includes, among otherthings, at least a processor and memory (both of which are not shown infigure, but are well known computer components). Preferably, theprocessor has enough processing power to handle and process varioustypes of market information. Therefore, the more market information isreceived and processed, the more processing power is preferred. However,any present day processor has enough processing power to handle andprocess various types of market information. Also, it should beunderstood that memory may include any computer readable medium. Theterm computer readable medium, as used herein, refers to any medium thatparticipates in providing instructions to a processor unit forexecution.

Preferably, the charting application 202 and the chart patternrecognition and analysis application 204 have access to marketinformation from one or more host exchanges 210 through an interface,such as the API 208. It should be understood that the chartingapplication 202 could be included in the chart pattern recognition andanalysis application 204 or could be a separate application, such asillustrated in FIG. 2. When the charting application 202 receivesinformation from the host exchange 210, it may arrange and display thereceived information on a chart that a trader may view on the visualoutput display device 212. The display device 212 could be CRT-basedvideo displays, LCD-based displays, gas plasma-panel displays, displaysthat show three-dimensional images, different display types, or thecombination thereof.

The charting application 202 could also interact with a tradingapplication (not shown) to keep track of trades being made by a trader.A commercially available trading application that allows a user to tradeis X_TRADER® from Trading Technologies International, Inc. of Chicago,Ill. X_TRADER® also provides an electronic trading interface, referredto as MD Trader™, in which working orders and/or bid and ask quantitiesare displayed in association with a static axis of prices. However, thepreferred embodiments are not limited to any particular product thatperforms translation, storage and display functions.

Portions of the X_TRADER® and the MD Trader™-style display are describedin U.S. patent application Ser. No. 09/590,692, now issued as U.S. Pat.No. 6,772,132, entitled “Click Based Trading With Intuitive Grid Displayof Market Depth,” filed on Jun. 9, 2000, U.S. patent application Ser.No. 09/971,087, now issued as U.S. Pat. No. 7,127,424, entitled “ClickBased Trading With Intuitive Grid Display of Market Depth and PriceConsolidation,” filed on Oct. 5, 2001, and U.S. patent application Ser.No. 10/125,894, now issued as U.S. Pat. No. 7,389,268, entitled “TradingTools for Electronic Trading,” filed on Apr. 19, 2002, the contents ofeach are incorporated herein by reference.

In the embodiment where the charting application 212 interacts with thetrading application, the charting application 212 could automaticallymark the chart when the trader submits orders to an exchange, and/orwhen each order is executed. It should be understood that the indicatorsused on the chart could be user-configurable. Also, in addition toautomatically marking points related to the orders being submitted bythe trader, the charting application 212 could also allow the trader tomanually mark other points of interest on the chart so that the tradercan later easily identify his points of interest. It should beunderstood that a trader could control what data is plotted on thechart.

The chart pattern recognition and analysis application 204 may allow auser to select a portion of a chart to be used in the chart patternrecognition process, chart analysis, or both. In an embodiment involvingthe chart pattern recognition, once a user selects a portion of a chart,the chart pattern recognition and analysis application 204 may use thecharacteristics of the selected chart portion to search for similarchart patterns in the future. It should be understood that a user coulddefine a time period that should be used by the chart patternrecognition and analysis application 204 to look for similar chartpatterns. The chart pattern recognition and analysis application 204could use many different methods to detect similar chart patterns. Onesuch method includes the Pearson's correlation analysis or geneticalgorithms. However, it should be understood that different statisticalanalysis could also be used for detecting similar chart patterns.

In another embodiment, a user may wish to analyze the selected chartpattern. In such an embodiment, the user could define a time period inthe past, and the chart pattern recognition and analysis application 204can search for similar chart patterns in the user-defined time frame.Once the chart pattern recognition and analysis application 204 findschart instances having similar chart pattern characteristics to those ofthe user-selected chart portion, the found matches can be displayed to auser. The user can then make the final determination which of the foundmatches will be used in the chart analysis. Once the selection is made,the chart pattern recognition and analysis application 204 can analyzethe chart portions by applying a number of chart studies to the selectedchart matches. For example, a chart study may look for common values ofone or more technical indicators that have occurred during the timeperiods corresponding to the selected chart matches, the examples ofwhich will be described in greater detail below.

The display devices 212 could be CRT-based video displays, LCD-baseddisplays, gas plasma-panel displays, displays that showsthree-dimensional images, or different display types. Also, the displaydevice could be a combination of separate display devices that cantogether create a composition in the user's visual field, such as ahead-mounted monocular see-through display that holds the chart or studyresults that is used together with another display that holds anotherinterface, such as a trading interface. The chart application 202 mayalso receive input signals from a trader via input devices 214. Exampleinput devices may include a mouse, a keyboard, a game pad, or a stylusin the systems using touch-screen display devices. However, differentinput devices could also be used. As mentioned in reference to thepreceding paragraph, the input signals received from a user may includean input selecting one or more chart portions to be used by the patternrecognition application 204 for analysis.

The operating system 206 may be used to manage hardware and softwareresources of the client terminal 200. General functions of the operatingsystem 206 may include processor management, memory management, devicemanagement, storage management, application interface, and userinterface. Any type of the operating system 206 may be used to implementthe present embodiments, and examples of common operating systemsinclude the Microsoft WINDOWS family of operating systems, the UNIXfamily of operating systems, or the MACINTOSH operating systems.However, those ordinarily skilled in the art will recognize that theadded complexity of an operating system may not be necessary to performthe functions described herein.

FIG. 3 is a flow diagram 300 illustrating operation and function of apossible implementation of one preferred embodiment for recognizingchart patterns. It should be understood that each block in this and anysubsequent flow diagrams may represent a module segment or a portion ofcode, which includes one or more executable instructions forimplementing specific logical functions or steps in the process.Alternate implementations are included within the scope of the preferredembodiment of the present invention in which functions may be executedout of order from that shown or discussed, including substantiallyconcurrently or in reverse order, depending on the functionalityinvolved, as would be understood by those reasonably skilled in the artof the present invention. The flow diagram 300 will be described inrelation to the elements of the client terminal in FIG. 2. However, itshould be understood that more, fewer, or different components couldalso be used to execute the method 300.

At step 302, the charting application 202 displays a chart representingmarket data related to a tradeable object. It should be understood thatdifferent items of interest related to a tradeable object could be used,and the example embodiments are not limited to any specific chartingmethods or chart types. For example, the charting application 202 coulduse line charts, bar charts, candlestick charts, or different charttypes. A line chart includes a line that is formed by connecting valuesof the selected item of interest over a period of time. A bar chartconsists of a number of vertical bars, where each bar corresponds to apredetermined time period, such as an hour, a day, a week, or a month,for example. Also, using the bar chart, the top and the bottom of eachbar defines the high and low values corresponding to the plottedvariable. In addition to the high and low values, each bar could alsodisplay the opening and closing values (or any other values) in theformat of short horizontal lines extending to the right and left of eachbar. In turn, the candlestick charts display open, high, close, and lowvalues, and use white (clear) candlesticks when the closing value ishigher then the opening value, and black (solid) candlesticks when theclosing value is lower than the opening value. It should be understoodthat the chart could display different values related to the tradeableobject, including, but not limited to, prices or traded quantities.Also, in another alternative embodiment, rather that displaying a chart,the charting application 204 could display a market profile. The marketprofile is a statistical display of price activity over a specified timeinterval, and different letters are used to represent a time priceopportunity-a specific half-hour time segment, or any other timeinterval, in which that price occurred on a specific day. However,different chart types could also be used.

At step 304, the charting application 204 receives a user inputselecting at least one portion of the chart to be analyzed according tothe preferred embodiments. In one embodiment, the charting application202 can provide a drawing function enabling a user to select a desiredportion of the chart. Alternatively, a trader could specify one or moretime periods that can be used by the pattern recognition application 204as a reference to select a portion of the chart corresponding to theselected time period.

At step 306, the pattern recognition application 204 searches forsimilar chart patterns using tradeable object related data beingreceived from at least one electronic exchange. It should be understoodthat different methods could be used to determine if the chart patternbeing monitored by the pattern recognition application 204 resembles theselected chart pattern. In one example embodiment, the patternrecognition application 204 could determine if the chart pattern fitsinto any standard chart pattern, such as if it corresponds to a fallingmarket, a rising market, or any other commonly known patterns including,but not limited to, market reversals or continuations. For example, thereversal pattern may include a double top pattern, a double bottompattern, a head and shoulder pattern, a rounding bottom and top pattern,a wedge, a hammer, or any other user-configurable patterns. As anexample, the double top pattern is typically detected when the marketfalls twice at a resistance level and then sharply reverses, while thedouble bottom pattern is just the opposite of the double top. Then, asan example of a continuous pattern, the pennant occurs when the marketpattern resembles a small symmetrical triangle, and it is a brief pausein a strongly trending market. Also, different chart patterncharacteristics could also be used, such as slopes of the trend linesthat could be drawn in relation to the selected chart pattern. Theslopes of the trend lines could then be used as part of the method forrecognizing similar chart patterns by the chart pattern recognitionapplication 204. However, it should be understood that rather thantrying to match the selected chart portion to any existing chartpattern, the chart pattern recognition application 204 could use anyother statistical techniques to determine if any currently occurringchart patterns matches characteristics of the selected chart pattern.Preferably, the chart pattern recognition application 204 may search forthe similar chart patterns until the end of a user-specified timeperiod, such as until the end of a trading day, or for any otheruser-specified time period.

Once the chart pattern recognition application 204 detects a similarchart pattern, at step 308, the chart pattern recognition application204 may alert a user. It should be understood that many different alertscould be used, including, but not limited to, any visual or audioalerts, or a combination thereof. For example, the chart patternrecognition application 204 could alert a user by displaying indicatorsin relation to the chart, flashing a portion of the chart, or providingan audio signal to a user. Once a user is alerted, the user may take anyactions, such as open new position or close any existing positions, oryet some other actions, to take advantage of the detected chart pattern.

FIG. 4 is a flow diagram 400 illustrating operation and function of apossible implementation of the preferred embodiments for analyzingcharts. The flow diagram 400 will be described in relation to theelements of the client terminal in FIG. 2. However, it should beunderstood that more, fewer, or different components could also be usedto execute the method 400.

At step 402, the charting application 202 displays a chart representingmarket data related to a tradeable object. As described in reference toFIGS. 3A and 3B, different chart types could be used to represent themarket data, and the example embodiments are not limited to anyparticular chart types or market profiles.

At step 404, the chart pattern recognition and analysis application 204receives a user input indicating a selection of at least a portion ofthe chart to be used in the chart analysis according to the preferredembodiments. A user can make the selection using a drawing function withrespect to the chart, by specifying a time period to be used by thechart pattern recognition and analysis application 204 as a reference toselect the portion of the chart, or via some other selection means.

At step 406, the chart pattern recognition and analysis application 204may search for similar chart patterns using chart data from the past. Inone embodiment, a user could specify a time period, such as the last twohours, the last month, the last year, or some other time interval to beused by the chart pattern recognition and analysis application 204 tosearch for similar chart patterns. As mentioned in reference to FIG. 3,any statistical analysis could be used to determine if a portion of achart in the past is similar to the selected chart pattern. Also, anydefault time period could be used for the search. When the patternrecognition and analysis application 204 finds one or more matches, atstep 408, the application can display the matches to a user via thedisplay devices 212. Once the matches are displayed, the user coulddecide which of them should be used in the analysis. Alternatively, allfound matches can be automatically used in the analysis.

At step 410, the chart pattern recognition and analysis application 204applies at least one study to the found chart matches. In one preferredembodiment, the studies can be used to determine reoccurring indicatorvalues corresponding to the found chart matches under the study. Itshould be understood that the example embodiments are not limited to anyspecific technical studies. As an example, technical studies may includedetermining values of a rate-of-change (“ROC”) indicator, a relativestrength indicator (“RSI”), an average true range (“ATR”), or a standarddeviation study. The ROC is a momentum oscillator that measures thepercent change in price from one time period to the next. For example, a10-day ROC can be determined by dividing the latest closing price by theclosing price 10 days ago. The RSI is a bounded momentum oscillator thatcompares the magnitude of the recent gains in currency to the magnitudeof the recent losses. Then, the ATR measures volatility, while thestandard deviation measures a difference between the selected set ofvalues corresponding to an indicator compared to the average value ofthe indicator.

In one preferred embodiment, when the chart pattern recognition andanalysis application 204 applies a technical study to a set of selectedchart pattern matches, the chart pattern recognition and analysisapplication 204 may determine a set of reoccurring indicator values,such as a set of reoccurring ROC indicator values. In an embodimentwhere the chart pattern and analysis application 204 also analyzesportions of a chart corresponding to the time periods before and afterthe found matches, the application 204 can also analyze those chartportions so that a user could get a better idea what set of reoccurringindicator values has lead to or followed the selected chart pattern. Itshould be understood that a trader could define the time periods to beused as a reference for selecting chart portions that proceed and followeach found chart pattern match. In such an embodiment, the chart patternrecognition and analysis application 204 could determine three sets ofreoccurring indicator values for the chart portions proceeding, duringand after the found matches. For example, the chart pattern recognitionapplication 204 could determine that the indicator values stayed withina specific range, or was above/below a certain value most of the timeduring a time period corresponding to each found chart match or during atime period before or after the found match. It should be understoodthat many different methods could be used to determine a reoccurringindicator range corresponding to the found chart pattern matches.

At step 412, the chart pattern recognition and analysis application 204may display results of each study to a user on the display devices 212.In the embodiment where the pattern recognition and analysis application204 determines the most often occurring range of values corresponding toone or more indicators, the range of values corresponding to eachindicator can be displayed to a user. For example, the patternrecognition and analysis application 204 may determine that the RSIindicator value was between a first value and a second value, such asbetween 70 and 80, during the time period corresponding to each foundmatch. Alternatively, rather than providing a range of reoccurringindicator values, the pattern recognition and analysis application 204could specify that during the major portion of the time period, such as80% of the time, the RSI indicator value was higher than 75 or wasaround 75. It should be understood that the level of detail provided toa trader may vary based on user preferences. The indicator values couldlater be used by the pattern recognition and analysis application 204 tohelp the application in detecting similar chart patterns in any futuremarket data.

As mentioned in the preceding paragraphs, in a preferred embodiment, atrader can interact with the pattern recognition application 204 and thecharting application via a graphical user interface. FIG. 5 is a blockdiagram illustrating an example graphical user interface 500 that can beused by a trader to perform chart pattern recognition and analysisaccording to the preferred embodiments.

The graphical user interface 500 is a visual environment that preferablyenables a user to view different charts, and provides additionalfunctionality and options to a user via a display of icons, dialogboxes, and menus. A user may activate any of the display icons or menusby pointing and clicking on any of them with a selection input device,such as a mouse, one or more keys on a keyboard, a stylus, or using yetanother input device. It should be understood that a trader could alsoset any parameters for performing chart studies and analysis throughsomething other than a graphical user interface, such as through acommand line entry.

As shown in FIG. 5, the graphical user interface 500 displays a linechart 502 that may represent traded prices, traded volume or yet someother quantity related to a tradeable object. Also, it should beunderstood that while FIG. 5 illustrates a line chart, any other charttypes could also be used in relation to the example embodimentsdescribed herein for the chart pattern recognition and analysis. In oneexample embodiment, the graphical user interface 500 allows a user toselect a portion of the chart 502 to be used in the chart patternrecognition, or analysis, or both. In one embodiment, a trader mayselect a portion of a chart by drawing around a desired portion of thechart. As illustrated in FIG. 5, a trader could select an icon 506 todraw on the graphical user interface 500, and to select a desiredportion of the chart 500. However, it should be understood thatdifferent methods for selecting a desired chart portion could also beused. For example, a trader could also define a time period via anotherwindow, and a chart portion corresponding to the specified time periodcould be automatically selected by the chart pattern recognition andanalysis application 204.

Alternatively, if a time axis is displayed in relation to the displayedchart, a user could select a portion of the chart by selecting tworeference points on the time axis, and the selected reference points canbe used to define a desired chart portion. It should be understood thata trader could view chart portions not being displayed on the graphicaluser interface 500 by selecting and moving a scroll bar 510, or yetusing some other means. It should be understood that different optionscould also be used to define and select a desired chart portion.

A trader could also control the chart display, such as what type of achart is displayed, by selecting different chart types using a charttype icon 508. Once the trader selects the chart type, the trader couldalso select a type of an item related to one or more tradeable objects,such as a last traded price or a last traded quantity, to be displayedon the chart. Also, additional chart manipulation functionality could beprovided to a trader, such as functionality enabling the trader to zoomin and zoom out on different portions of the chart, to change the chartscale, or yet some other chart related functionality.

When a trader selects a desired chart portion, the trader could select afind matches icon 524 to search for similar matches. According to theexample embodiments, the find matches icon 524 may give the trader twooptions, the first one, to search for any reoccurring chart patternmatches in the future, or, the second option, to look for similar chartpatterns in the past. It should be understood that the trader could alsoselect both options as well to be performed simultaneously. Also,preferably, a trader may be given a number of additional options tofurther customize his search. For example, one of the options given to atrader may enable the trader to define a timeframe to be used by thechart pattern recognition and analysis application 204 to find thematching chart portions. The time frame could be any time period in thepast or any future time period, depending on the functional selectionmade by the trader.

If a trader wishes to search for similar chart patterns in the future,the chart pattern recognition and analysis application 204 may monitordata being plotted on the chart to detect similar chart patterns. Asmentioned in earlier paragraphs, there are many currently existing chartpattern detection methods, and the example embodiments are not limitedto any specific methods for detecting similarities in chartcharacteristics. If a similar chart pattern is detected, the chartpattern recognition and analysis application 204 can alert a user. Itshould be understood that the application 204 could be configured tomonitor whether the chart pattern matches the chart pattern selected bya trader for a predetermined time period before alerting the trader thatthe match was found, and such a time period could be user-configurableor could be any preset default value. The alert can take many differentformats, and may include any visual alerts, audio alerts, or thecombination of both.

Upon alerting a user, the chart pattern recognition and analysisapplication 204 could continue monitoring the data being plotted inrelation to the chart to determine the accuracy of its prediction. Theaccuracy data may then be used by the application 204 to generate aperformance result report listing general or specific statistics. Atrader may use the performance data to modify any existing settings. Ifthe accuracy of predictions is low, a trader may wish to allow the chartpattern recognition and analysis application 204 to use a longer timeperiod to decide if any chart pattern being monitored by the application204 matches the chart pattern to be searched for by the application 204.Also, different modifications could also be made by a user based on theperformance data.

In an embodiment where a trader wishes to find matches in a specifictime period in the past, the graphical user interface 500 may displayany matches found by the chart pattern recognition application 204, suchas those illustrated at 512-518. It should be understood that a tradercould define how many matches should be displayed via the interface 500,and the chart pattern recognition application 204 could prioritize anddisplay to a trader only those matches that are closest to the selectedchart pattern.

When the chart pattern recognition application 204 finds the matches, atrader may wish to further analyze the chart pattern by applying one ormore studies to the found matches, and thus, determining a set ofreoccurring indicator values associated with the pattern. However,before applying any studies, a trader could be able to eliminate thosematches that a trader does not wish to be taken into consideration whenapplying one or more studies. In an embodiment illustrated in FIG. 5, atrader could mark which of the found matches should be eliminated usingselection boxes displayed in relation to the chart matches, such asselection boxes 520 and 522. Depending on the configuration, a tradercould also use the selection boxes to indicate which of the displayedchart matches should be used in the chart pattern analysis. In theembodiment where selection boxes are used to eliminate any foundmatches, a trader could select a “Remove X-Outs” icon 526 to eliminatethe marked-up matches from any studies to be applied to the matches.

Once a trader selects found matches, a trader could apply differentstudies to the found matches. It should be understood that if a traderwishes to have more chart matches to perform a desirable study, thetrader could increase a time period to be used by the chart patternrecognition and analysis application 204, and the new time period couldbe used to perform a second search. When a trader believes that he hasenough matches, the trader may select an “Apply Study” icon 528 to viewa list of available studies. The list of available studies may includemany different types of studies, such as determining positions ofdifferent types of moving averages in relation to each chart patternmatch, or determining values of momentum indicators, such as the ROC orRSI, determining a rate of change, stochastic indicator values, or otherindicator values. The trader may then select one or more studies to beapplied to the found matches.

When the chart pattern recognition and analysis application 204 appliesthe selected studies to the chart matches, such as, for example, finds aset of RSI values detected in relation to each chart pattern match, thechart pattern recognition application 204 can attempt to find a set ofindicator values that is shared by all chart pattern matches, e.g., areoccurring set of indicator value(s). For example, the application 204could determine in relation to all matches under the study, that the RSIindicator value, or some other indicator value, was most of the timehigher than a specific value “X.” Alternatively, the application 204could determine a range of indicator values detected in relation to allfound chart matches. Also, it should be understood that rather thanapplying any technical studies, the chart pattern recognition andanalysis application 204 could also study any other tradeable objectrelated characteristics, such as traded volume during the occurrence ofthe chart patterns. The results of the studies could be displayed to atrader. Also, the results of the studies could be used by the chartpattern recognition and analysis application 204 in the process ofdetecting the same chart pattern in the future.

The above description of the preferred embodiments, alternativeembodiments, and specific examples, are given by way of illustration andshould not be viewed as limiting. Further, many changes andmodifications within the scope of the present embodiments may be madewithout departing from the spirit thereof, and the present inventionincludes such changes and modifications.

It will be apparent to those of ordinary skill in the art that methodsinvolved in the system and method for chart pattern recognition andanalysis may be embodied in a computer program product that includes oneor more computer readable media. For example, a computer readable mediumcan include a readable memory device, such as a hard drive device, aCD-ROM, a DVD-ROM, or a computer diskette, having computer readableprogram code segments stored thereon. The computer readable medium canalso include a communications or transmission medium, such as, a bus ora communication link, either optical, wired or wireless having programcode segments carried thereon as digital or analog data signals.

The claims should not be read as limited to the described order orelements unless stated to that effect. Therefore, all embodiments thatcome within the scope and spirit of the following claims and equivalentsthereto are claimed as the invention.

1. A computer readable medium having program instructions storedthereon, which when executed cause a processor to execute actscomprising: analyzing a selected portion of market information for atradeable object received from an electronic exchange to identifysimilar patterns within the selected portion of market information; inresponse to analyzing, identifying at least one reoccurring pattern; anddisplaying a plurality of reoccurring patterns via a display device, theplurality of reoccurring patterns including the at least one reoccurringpattern.
 2. The computer readable medium of claim 1 where the actsfurther comprise displaying the market information comprising a chart ofmarket data versus time.
 3. The computer readable medium of claim 2where the market data comprises historical market data.
 4. The computerreadable medium of claim 1 where identifying the at least onereoccurring pattern comprises identifying the reoccurring pattern inmarket data being received from an electronic exchange.
 5. The computerreadable medium of claim 1 where the acts further comprise applying atleast one chart pattern study of the at least one of the plurality ofreoccurring patterns.
 6. The computer readable medium of claim 5 wherethe at least one chart pattern study is selected from a plurality ofchart pattern studies.
 7. The computer readable medium of claim 6 wherethe plurality of chart pattern studies comprises any of determiningpositions of moving averages, determining values of momentum indicators,determining rate of change, determining stochastic values, determining arelative strength indicator, determining an average true range,identifying a volume, and combinations thereof.
 8. The computer readablemedium of claim 1 where the acts further comprise receiving a user inputto select at least one of the plurality of reoccurring pattern forelimination from inclusion in a further study.
 9. The computer readablemedium of claim 1 where the selected portion of market information forthe tradeable object comprises a start corresponding to an order to buyor sell the tradeable object being submitted.
 10. The computer readablemedium of claim 9 where the selected portion of market information forthe tradeable object comprises an end corresponding to execution of theorder.
 11. A method for market pattern recognition, the methodcomprising: analyzing, via a computer device, a selected portion ofmarket information for a tradeable object received from an electronicexchange to identify similar patterns within the selected portion ofmarket information; in response to analyzing, identifying at least onereoccurring pattern via the computer device; and displaying a pluralityof reoccurring patterns via a display device associated with thecomputer device, the plurality of reoccurring patterns including the atleast one reoccurring pattern.
 12. The method of claim 11 furthercomprising displaying the market information comprising a chart ofmarket data versus time.
 13. The method of claim 12 where the marketdata comprises historical market data.
 14. The method of claim 11 whereidentifying the at least one reoccurring pattern comprises identifyingthe reoccurring pattern in market data being received from an electronicexchange.
 15. The method of claim 11 further comprising applying atleast one chart pattern study of the at least one of the plurality ofreoccurring patterns, where the at least one chart pattern study isselected from a plurality of chart studies comprising any of determiningpositions of moving averages, determining values of momentum indicators,determining rate of change, determining stochastic values, determining arelative strength indicator, determining an average true range,identifying a volume, and combinations thereof.
 16. The method of claim11 where the selected portion of market information for the tradeableobject comprises a start corresponding to an order to buy or sell thetradeable object being submitted and an end corresponding to executionof the order.
 17. A chart pattern analysis system comprising: a marketinformation receiver configured to receive market information from anelectronic exchange; a charting application coupled with the marketinformation receiver and configured to process the market informationfor display and to receive a selection of a least a portion of themarket information; a chart pattern recognition and analysis applicationcoupled with the charting application and configured to analyze the atleast a portion of the market information for a chart pattern matchanalysis; and a display coupled with the chart patent recognition andanalysis application and configured to display a plurality ofreoccurring patterns including the at least a portion of the marketinformation.